package com.quick.develop.flowable.domain.activity;

import com.quick.develop.flowable.domain.dto.task.BpmCommentDTO;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.io.Serializable;
import java.util.Date;
import java.util.List;

/**
 * @author junyuan.liu
 * @description: 
 * @date 2022/5/2 14:19
 */
@ApiModel("管理后台 - 流程活动的 Response VO")
@Data
public class BpmActivityRespVO implements Serializable {
    private static final long serialVersionUID = -1401919423826449592L;

    @ApiModelProperty(value = "ID")
    private String id;
    
    @ApiModelProperty(value = "流程实例ID")
    private String processInstanceId;
    
    @ApiModelProperty(value = "活动ID")
    private String activityId;
    
    @ApiModelProperty(value = "活动名称")
    private String activityName;
    
    @ApiModelProperty(value = "活动的类型")
    private String activityType;

    @ApiModelProperty(value = "活动的开始时间" )
    private Date startTime;
    @ApiModelProperty(value = "活动的结束时间" )
    private Date endTime;

    @ApiModelProperty(value = "关联的流程任务的编号", notes = "关联的流程任务，只有 UserTask 等类型才有")
    private String taskId;
    
    @ApiModelProperty(value = "删除理由", notes = "判断退回，自动结束等")
    private String deleteReason;
    
    @ApiModelProperty(value = "子流程流程实例ID", notes = "调用活动生成的流程实例")
    private String calledProcessInstanceId;
    
    @ApiModelProperty(value = "子流程流程实例标题")
    private String calledProcessInstanceName;
    
    @ApiModelProperty(value = "审批人")
    private String assignee;
    
    @ApiModelProperty(value = "审批人名称" , example = "【admin】ECM")
    private String assigneeName;

    @ApiModelProperty(value = "耗时", notes = "毫秒")
    private Long durationInMillis;

    @ApiModelProperty(value = "审批意见")
    private List<BpmCommentDTO> commentList;
    
    
}
